package Chapter6;

//119页程序6.1 判断是否为同一对象，此处使用的是Object类的equals方法
class BankAccount1 {
    private String OwnerName;  //名称
    private int AccountNumber;  //账号
    private float Balance;  //余额

    BankAccount1(String name, int num1, float num2) { //构造方法
        OwnerName = name;
        AccountNumber = num1;
        Balance = num2;
    }

    String getOwnerName() { //返回名字
        return OwnerName;
    }

    int getAccountNumber() { //返回账号
        return AccountNumber;
    }

    float getBalance() { //返回余额数
        return Balance;
    }

}

public class EqualsTest1 { //主类
    public static void main(String[] args) {
        BankAccount1 a = new BankAccount1("John", 123, 100.0f); //创建对象
        BankAccount1 b = new BankAccount1("John", 123, 100.0f);
        //BankAccount1 b=a;  //当不使用new运算符时，a和b是同一个对象。如果使用new运算符，即使属性值相同，也不是同一个对象。

        if (a.equals(b)) //判断是否是同一对象
            System.out.println("使用equals方法比较a和b的结果是：是同一对象");
        else
            System.out.println("使用equals方法比较a和b的结果是：不是同一对象");
        if (a == b) //判断是否是同一对象
            System.out.println("使用==运算符比较a和b的结果是：是同一对象");
        else
            System.out.println("使用==运算符比较a和b的结果是：不是同一对象");
        //Object类的equals和==都是判断是否是同一对象，因此结果都为false
    }
}
